/*<script type="text/javascript">
	$(function() {
		coursetypes_params = {
			// 课程类别json文件url
			'jsonUrl': '/json/wss_coursetypes.json?' + generateMixed(12),
			
			// 课程类别联动容器
			'container': 'span',
			// 课程类别联动容器id
			'container_id': 'coursetypes',
			
			// 一级课程类别标识
			'level_1_id': 'data[coursetype_1]',
			// 一级课程类别默认值
			'level_1_default': '',
			
			// 二级课程类别标识
			'level_2_id': 'data[coursetype_2]',
			// 二级课程类别默认值
			'level_2_default': '',
			
			// 三级课程类别标识
			'level_3_id': 'data[coursetype_3]',
			// 三级课程类别默认值
			'level_3_default': ''
		};
		
		initSelects(coursetypes_params);
	});
</script>*/


/**
 * 初始化三级联动下拉框
 *
 * @return
 */
function initSelects(params) {
	$.ajax({
		type: "GET",
		url: params.jsonUrl,
		dataType: "json",
		timeout: 7000,
		success: function(result) {
			// 如果有课程类别,则显示
			if (result != '') {
				var str = '';
				str += '<select id="' + params.level_1_id + '" name="' + params.level_1_id + '">';
				str += '<option value="" selected>--请选择--</option>';

				$.each(result, function(i, j) {
					if (params.level_1_default != '') {
						str += '<option value="' + i + '"';
						if (params.level_1_default == i) {
							str += ' selected ';
							if (params.level_2_default != '') {
								initSelects_2(params, i);
							}
						}
						str += '>' + j['name'] + '</option>';
					} else {
						str += '<option value="' + i + '">' + j['name'] + '</option>';
					}
				});
				str += '</select>';

				$('\'' + params.container + '[id="' + params.container_id + '"]\'').html(str);

				$(params.container + ' select[id="' + params.level_1_id + '"]').bind("change", function() {
					initSelects_2(params, $(this).val());
				});
			}
		},
		error: function() {
			alert('数据读取错误..');
		}
	});
};


/**
 * 初始化二级联动下拉框
 */
function initSelects_2(params, pid) {
	if(pid == '') {
		// 如果没有选择一级,则删除二级,三级下拉框
		$(params.container + ' select[id="' + params.level_2_id + '"]').remove();
		$(params.container + ' select[id="' + params.level_3_id + '"]').remove();
	} else {
		$.ajax({
			type: "GET",
			url: params.jsonUrl,
			dataType: "json",
			timeout: 7000,
			success: function(result) {
				
				// 如果有子类别,则显示
				if (result[pid]['child'] != '') {
					var str = '&nbsp;';
					str += '<select id="' + params.level_2_id + '" name="' + params.level_2_id + '">';
					str += '<option value="" selected>--请选择--</option>';

					$.each(result[pid]['child'], function(i, j) {
						if (params.level_2_default != '') {
							str += '<option value="' + i + '"';
							if (params.level_2_default == i) {
								str += ' selected ';
								if (params.level_3_default != '') {
									initSelects_3(params, pid, i);
								}
							}
							str += '>' + j['name'] + '</option>';
						} else {
							str += '<option value="' + i + '">' + j['name'] + '</option>';
						}
					});
					str += '</select>';

					$(params.container + ' select[id="' + params.level_2_id + '"]').remove();
					$(params.container + ' select[id="' + params.level_3_id + '"]').remove();
					$(params.container + ' select[id="' + params.level_1_id + '"]').after(str);

					$(params.container + ' select[id="' + params.level_2_id + '"]').bind("change", function(){
						initSelects_3(params, pid, $(this).val());
					});
				} else {
					// 如果没有子类, 则隐藏下级下拉框
					$(params.container + ' select[id="' + params.level_2_id + '"]').remove();
					$(params.container + ' select[id="' + params.level_3_id + '"]').remove();
				}
			},
			error: function() {
				alert('数据读取错误..');
			}
		});
	}
};


/**
 * 初始化三级联动下拉框
 */
function initSelects_3(params, ppid, pid) {
	if(pid == '') {
		// 如果没有选择二级,则删除三级下拉框
		$(params.container + ' select[id="' + params.level_3_id + '"]').remove();
	} else {
		$.ajax({
			type: "GET",
			url: params.jsonUrl,
			dataType: "json",
			timeout: 7000,
			success: function(result) {
				// 如果有子类别,则显示
				if (result[ppid]['child'][pid]['child'] != '') {
					var str = '&nbsp;';
					str += '<select id="' + params.level_3_id + '" name="' + params.level_3_id + '">';
					str += '<option value="" selected>--请选择--</option>';

					$.each(result[ppid]['child'][pid]['child'], function(i, j) {
						if (params.level_3_default != '') {
							str += '<option value="' + i + '"';
							if (params.level_3_default == i) {
								str += ' selected ';
							}
							str += '>' + j['name'] + '</option>';
						} else {
							str += '<option value="' + i + '">' + j['name'] + '</option>';
						}
					});
					str += '</select>';

					$(params.container + ' select[id="' + params.level_3_id + '"]').remove();
					$(params.container + ' select[id="' + params.level_2_id + '"]').after(str);
				} else {
					// 如果没有子类, 则隐藏下级下拉框
					$(params.container + ' select[id="' + params.level_3_id + '"]').remove();
				}
			},
			error: function() {
				alert('数据读取错误..');
			}
		});
	}
};


// 生成随机字符串
function generateMixed(n) {
	var chars = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
    var res = "";
    for(var i = 0; i < n ; i ++) {
        var id = Math.ceil(Math.random() * 35);
        res += chars[id];
    }
    return res;
};